package com.ywgt.system.service;

import com.github.pagehelper.Page;
import com.ywgt.system.pojo.AuthUser;
import com.ywgt.system.pojo.InStock;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ywgt.system.vo.InStockVO;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author yiping
 * @since 2021-01-22
 */
public interface InStockService extends IService<InStock> {

    /**
     * 根据条件查询入库订单
     * @param pageNum 页码
     * @param pageSize 每页显示数量
     * @param inStockVO 构件的查询对象
     * @return 返回分页对象
     */
    Page<InStockVO> findInStockList(Integer pageNum,Integer pageSize,InStockVO inStockVO);

    /**
     * 根据id查询入库单细节
     * @param id 入库单id
     * @return 返回的入库对象
     */
    InStock detail(Long id);

    /**
     * 删除入库订单
     * @param id 入库订单编号
     * @return 返回true删除成功，返回false失败
     */
    boolean delete(Long id);

    /**
     * 根据供应商信息添加入库订单
     * @param inStockVO 入库单对象
     * @param authUser 操作人员信息
     * @param supplierId 供应商id
     * @return 返回true则成功 反之失败
     */
    boolean supplierInsert(InStockVO inStockVO, AuthUser authUser,Long supplierId);

    /**
     * 新添加入库单及供应商
     * @param inStockVO 入库单对象
     * @param authUser 操作人员信息
     * @return 返回true则成功 反之失败
     */
    boolean newInsert(InStockVO inStockVO, AuthUser authUser);
}
